Skip to content

Add testing_commitBlockV1 RPC Method#787

Open
marcindsobczak wants to merge 1 commit into
ethereum:mainfrom
marcindsobczak:testing-commit-block-v1
Open

Add testing_commitBlockV1 RPC Method#787
marcindsobczak wants to merge 1 commit into
ethereum:mainfrom
marcindsobczak:testing-commit-block-v1

Conversation

@marcindsobczak

Copy link
Copy Markdown

Addressing #705
which was partially addressed by already specified testing_buildBlockV1 #747 & #710.
tesitng_commitBlockV1 is working similar to testing_buildBlockV1, but instead of returning a new payload, it is commiting it to the main chain and returning only hash of commited block (or null in case of fail).

This method will be useful for extensive bloating - eliminates overhead of:

  • serializing generated new payload
  • returning it via engine API
  • then receiving the same payload as engine_newPayload
  • deserializing it

Here, generated new payload will be directly validated and commited to the main chain and only block hash will be returned as a confirmation of success (or 'null' if fails)

@MysticRyuujin

Copy link
Copy Markdown
Contributor

This will need, at a minimum, ACDE or ACDT buy in and someone willing to write at least one client implementation, preferably in Geth

@marcindsobczak

Copy link
Copy Markdown
Author

It's already implemented in Nethermind:
NethermindEth/nethermind#11385

We are using it to effectively bloat a state.

@MysticRyuujin

Copy link
Copy Markdown
Contributor

Hey @marcindsobczak - please see: #801

I opened a PRs against go-ethereum, nethermind, and hive to align spec and and implementations and generate the test fixtures.

`null` if the block could not be built, validated, or committed; in that case the reason is returned via a JSON-RPC error response.
oneOf:
- $ref: '#/components/schemas/hash32'
- type: 'null'

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This looks off to me. The response should be just the hash. We don't need to specify null here for the error case because in JSON-RPC if we return an error then there is no response returned.

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Already addressed in #801

AnkushinDaniil added a commit to NethermindEth/state-benchmarks that referenced this pull request Jun 18, 2026
- Author labels are now @GitHub-handles, linked to profiles (no real names).
- Add two upstream Ethereum PRs that standardize the project's tooling:
  ethereum/execution-apis#787 (testing_commitBlockV1 RPC, open) and
  ethereum/execution-specs#2746 (Spamoor → EEST migration, draft).
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants